package org.shiwen.week11;

import java.sql.SQLOutput;

public class TryCatch {
    public static void main(String[] args) {
        int a[] = {1,2,3,4,5,6};

        //加入代码没有问题，try里面的代码也会被执行，catch的代码不会运行
//        try{
//            System.out.println(a[0]);
//        } catch (Exception e) {
//            System.out.println("数组越界");
//        }
//        System.out.println("哪怕异常未被捕获，try里面的代码也会被执行");


//        try{
//            System.out.println("程序会在遇到第一个异常的时候，结束try里面的代码，后续不再运行");
//            System.out.println(a[10]);
//            //这部分代码不会运行
//            System.out.println(a[0]/0);
//            System.out.println("10");
//        } catch (ArrayIndexOutOfBoundsException e) {
//            System.out.println("数组越界");
//        } catch (ArithmeticException e) {
//            System.out.println("除数不能为0");
//        } catch (Exception e){
//            //父类异常必须写在下面，如果写在上面会导致报错
//            System.out.println("异常");
//        }

        //如果try里面的异常没有被捕获，那么会执行默认处理异常的方式，即打印异常信息，后续代码不会继续运行
//        try{
//            System.out.println(a[0]/0);
//        } catch (ArrayIndexOutOfBoundsException e) {
//            System.out.println("索引异常");
//        }




    }
}
